home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Item MB Quick & Easy 2.0
/
Item MB Quick & Easy 2.0.iso
/
mbfacad
/
eaitproi.lsp
< prev
next >
Wrap
Text File
|
1998-03-15
|
11KB
|
240 lines
;---------Unterfunktion zur Profilzeichnung für Kanalelemente
;--------------------------------------------------------------------------
; Wird neues Profil erstellt, trage die Liste mit den Punkten der Quer-
; linien ein (siehe erstes SETQ) und füge eine entsprechende Zeile in der
; ersten COND - Anweisung ein !!!!
;
; PROFIL muß eine String entsprechend aus erster COND- Anweisung sein
; EPKT ist Einfügepkt.
; LA ist Laenge des Profils
; WIN ist Einfügewinkel
; KRI ist Konstruktionswinkel
;--------------------------------------------------------------------------
(defun EAITproI (PROFIL EPKT LA WIN KRI / SS1 LI LI1 LI2 LI3 LI4 LI5 LI6 LI7 LI8 LI9
LIN END1 WIZ N Z)
;--------Listen der Profil-Linien
(setvar "OSMODE" 0)
(setq LI1 '(40)
LI2 '(80)
LI3 '(9.5)
LI4 '(120)
LI5 '(160)
LI6 '(19.7 21)
LI7 '(59.7 61)
LI8 '(99.7 101)
LI9 '(139.7 141)
LI10 '(40 49.5)
LI11 '(40 80)
LI12 '(40 160)
LI13 '(40)
LI14 '(80)
LI15 '(16)
LI16 '(16 24 33 36 38.5 41.5 44 47 56 64 80)
LI17 '(7.5 12.5 17.5 22.5 27.5 32.5 37.5 42.5 47.5 52.5 57.5 62.5 67.5 72.5 80)
LI18 '(7.5 12.5 18.75 21.25 38.75 41.25 47.5 52.5 58.75 61.25 67.5 72.5 78.75 81.25 98.75 101.25 107.5 112.5 120)
LI19 '(16 24 33 36 38.5 41.5 44 47 56 64 73 76 78.5 81.5 84 87 96 104 120)
LI20 '(10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105 110 120)
LI21 '(4.5 6.5 8.75 11.25 13.5 16.5 18.5 21.5 23.5 26.5 28.5 31.5 33.5 36.5 38.5 41.5 43.5 46.5 48.5 51.5 53.5 56.5 58.5 61.5 63.5 66.5 68.5 71.5 73.5 76.5 78.5 81.5 83.5 86.5 88.5 91.5 93.5 96.5 98.5
101.5 103.5 106.5 108.5 111.5 113.5 116.5 118.5 121.5 123.5 126.5 128.5 131.5 133.5 136.5 138.5 141.5 143.5 146.5 148.5 151.5 153.5 156.5 158.5 161.5 163.5 166.5 168.5 171.5 173.5 176.5 178.5 181.5 183.5 186.5 188.75 191.25 193.5 195.5 200)
)
(cond ((= PROFIL "T40")(setq LI LI1)) ;Traegerprofil 40 breite Seite
((= PROFIL "T80")(setq LI LI2)) ;Traegerprofil 80 breite Seite
((= PROFIL "TS")(setq LI LI3)) ;Traegerprofile schmale Seite
((= PROFIL "T120")(setq LI LI4)) ;Traegerprofil 120 breite Seite
((= PROFIL "T160")(setq LI LI5)) ;Traegerprofil 160 breite Seite
((= PROFIL "W40")(setq LI LI6)) ;Wandprofil 40 breite Seite
((= PROFIL "W80")(setq LI LI7)) ;Wandprofil 80 breite Seite
((= PROFIL "W120")(setq LI LI8)) ;Wandprofil 120 breite Seite
((= PROFIL "W160")(setq LI LI9)) ;Wandprofil 160 breite Seite
((= PROFIL "T80-45S")(setq LI LI10)) ;Traegerprofil 80-45° schmale Seite
((= PROFIL "T80-45B")(setq LI LI11)) ;Traegerprofil 80-45° Breite Seite
((= PROFIL "T120-45B")(setq LI LI12)) ;Traegerprofil 80-45° Breite Seite
((= PROFIL "D40")(setq LI LI13)) ;Deckelprofil 40 breite Seite
((= PROFIL "D80")(setq LI LI14)) ;Deckelprofil 80 breite Seite
((= PROFIL "VBL")(setq LI LI15)) ;Verblendprofil
((= PROFIL "EGL120")(setq LI LI16)) ;Elektronikgeh. 120 links
((= PROFIL "EGR120")(setq LI LI17)) ;Elektronikgeh. 120 rechts
((= PROFIL "EGU120")(setq LI LI18)) ;Elektronikgeh. 120 unten
((= PROFIL "EGL200")(setq LI LI19)) ;Elektronikgeh. 200 links
((= PROFIL "EGR200")(setq LI LI20)) ;Elektronikgeh. 200 rechts
((= PROFIL "EGU200")(setq LI LI21)) ;Elektronikgeh. 200 unten
);cond
;---------Bedingungen für Quadranten
(cond ((AND (<= WIN KRI)(< KRI (+ WIN(/ Pi 2))));I. Quadrant
(setq WIN WIN ;
WIZ (+ WIN (/ Pi 2)) ;
) ;
) ;I. Quadrant
((AND (<= (+ WIN(/ Pi 2)) KRI)(< KRI (+ WIN Pi))); II. Quadrant
(setq WIN (+ WIN Pi) ;
WIZ (- WIN (/ Pi 2)) ;
) ;
) ; II. Quadrant
((AND (<= (+ WIN Pi) KRI)(< KRI (+ WIN (/(* Pi 3)2)))); III.Quadrant
(setq WIN (+ WIN Pi) ;
WIZ (+ WIN (/ Pi 2)) ;
) ;
) ; III. Quadrant
(T ; IV. Quadrant
(setq WIN WIN ;
WIZ (- WIN (/ Pi 2)) ;
) ;
) ; IV. Quadrant
);cond
(setq WINFO (/ (+ WIN WIZ) 2)) ;Winkel für MB-INFO - Punkt
;-----------Zeichnen der Profil-Grundlinie
(cond ((= "W" (substr PROFIL 1 1))
(command EAITlay EAITlse "EAIT50" "")
(setq EPKT (polar EPKT WIZ 9.5)
P1 EPKT
END1 (polar EPKT WIN LA)
)
(command EAITlin EPKT END1 "")
(setq LIN (entlast)
SS1 (ssadd (entlast))
Z -1
)
;-----------Zeichnen des restlichen Profils
(foreach N LI
(command EAITkop LIN "" EPKT (polar EPKT WIZ N))
(setq SS1 (ssadd (entlast) SS1))
(setq Z (1+ Z))
);foreach
(command EAITlin EPKT (polar EPKT WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin END1 (polar END1 WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
);cond "W"
((= "T80-45S" PROFIL)
(command EAITlay EAITlse "EAIT50" "")
(setq END1 (polar EPKT WIN LA))
(command EAITlin EPKT END1 "")
(setq LIN (entlast)
SS1 (ssadd (entlast))
Z 0
)
;-----------Zeichnen des restlichen Profils
(command EAITlay EAITlse "EAIT25" "")
(command EAITlin (polar EPKT WIZ (nth Z LI))(polar END1 WIZ (nth Z LI)) "")
(setq SS1 (ssadd (entlast) SS1))
(setq Z (1+ Z))
(command EAITlay EAITlse "EAIT50" "")
(command EAITlin (polar EPKT WIZ (nth Z LI))(polar END1 WIZ (nth Z LI)) "")
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin EPKT (polar EPKT WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin END1 (polar END1 WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
);cond "T80-45S"
((OR (= "T80-45B" PROFIL) (= "T120-45B" PROFIL))
(command EAITlay EAITlse "EAIT50" "")
(setq END1 (polar EPKT WIN LA))
(command EAITlin EPKT END1 "")
(setq LIN (entlast)
SS1 (ssadd (entlast))
Z 0
)
;-----------Zeichnen des restlichen Profils
(command EAITlay EAITlse "EAIT25" "")
(command EAITlin (polar EPKT WIZ (nth Z LI))(polar END1 WIZ (nth Z LI)) "")
(setq SS1 (ssadd (entlast) SS1))
(setq Z (1+ Z))
(command EAITlay EAITlse "EAIT50" "")
(command EAITlin (polar EPKT WIZ (nth Z LI))(polar END1 WIZ (nth Z LI)) "")
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin EPKT (polar EPKT WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin END1 (polar END1 WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
);cond "T80-45B" oder "T120-45B"
((OR (= "D40" PROFIL) (= "D80" PROFIL))
(command EAITlay EAITlse "EAIT50" "")
(setq END1 (polar EPKT WIN LA))
(command EAITlin EPKT END1 "")
(setq LIN (entlast)
SS1 (ssadd (entlast))
Z 0
)
;-----------Zeichnen des restlichen Profils
(command EAITlay EAITlse "EAIT25" "")
(command EAITlin EPKT (polar END1 WIZ (nth Z LI)) "")
(setq SS1 (ssadd (entlast) SS1))
(command EAITlay EAITlse "EAIT25" "")
(command EAITlin (polar EPKT WIZ (nth Z LI)) END1 "")
(setq SS1 (ssadd (entlast) SS1))
(command EAITlay EAITlse "EAIT50" "")
(command EAITlin (polar EPKT WIZ (nth Z LI))(polar END1 WIZ (nth Z LI)) "")
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin EPKT (polar EPKT WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin END1 (polar END1 WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
);cond "D40" oder "D80"
(T
(command EAITlay EAITlse "EAIT50" "")
(setq END1 (polar EPKT WIN LA))
(command EAITlin EPKT END1 "")
(setq LIN (entlast)
SS1 (ssadd (entlast))
Z -1
)
;-----------Zeichnen des restlichen Profils
(foreach N LI
(command EAITkop LIN "" EPKT (polar EPKT WIZ N))
(setq SS1 (ssadd (entlast) SS1))
(setq Z (1+ Z))
);foreach
(command EAITlin EPKT (polar EPKT WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
(command EAITlin END1 (polar END1 WIZ (nth Z LI)) "") ;Seiten-Linie d. Profils
(setq SS1 (ssadd (entlast) SS1))
);cond T
);cond
;-----------Block bilden
(setq BName (EAITbnr))
(command EAITblo BName EPKT SS1 ""
EAITege BName EPKT "" "" "" )
);defun EAITproI